#ifndef MUSICLIST_H
#define MUSICLIST_H
#include"music.h"
#include<QVector>
#include<QUrl>
#include<QList> 
#include<QSet>
//由于musicList所属类，并不能直接⽀持范围for，因此需要在MusicList类中新增
typedef typename QVector<Music>::iterator iterator;

//管理所有歌曲所对应的Music对象
class MusicList
{
public:
    iterator begin();
    iterator end();
    void addMusicByUrl(const QList<QUrl>& urls);
    iterator findMusicById(const QString& musicId);
    void writeToDB();//将数据写入数据库
    void readFromDB();//从数据库中写入歌曲信息
    MusicList();

private:
    QVector<Music>musicList;
    QSet<QString> musicPaths;
};

#endif // MUSICLIST_H
